The members and base classes of a struct are public by default, while in class, they default to private. Base classes of a struct are public by default while they are private by default with 'class' (however you should make your base classes *explicitly* public, private, or protected). 'Struct' and 'class' are otherwise functionally equivalent.